4 LCD

AGB uses a 2.9-inch-wide reflective TFT color LCD screen.

The vertical blanking interval of AGB is longer than that of DMG and CGB, and its horizontal blanking interval is fixed.

Item Value Interval
Display screen size Number of dots per horizontal line 240 dots 57.221 s
Number of horizontal lines 160 lines 11.749 ms
Total number of dots Number of dots per horizontal line 308 dots 73.433 s
Number of horizontal lines 228 lines 16.743 ms
Blanking Number of dots per horizontal blank 68 dots 16.212 s
Number of horizontal lines per vertical blank 68 lines 4.994 ms
Scanning cycle H interval frequency 13.618 KHz 73.433 s
V interval frequency 59.727 Hz 16.743 ms

4.1 LCD Status

4.1.1 V Counter

The VCOUNT register can be used to read which of the total of 228 LCD lines (see previous figure) is currently being rendered.

A value of 0-227 is read.

A value of 0-159 indicates that rendering is in progress; a value of 160-227 indicates a vertical blanking interval.

4.1.2 General LCD Status

General LCD status information can be read from bits 0-5 of the DISPSTAT register.

In addition, 3 types of interrupt requests can be generated by the LCD controller.

DISPSTAT [d15-08] V Count Setting

Can be used to set the value used for V counter evaluation and V counter match interrupts. The range for this setting is 0-227.

DISPSTAT [d05] V Counter Match Interrupt Request Enable Flag

Allows an interrupt request to be generated when the value of the V counter setting and the value of the line actually rendered (VCOUNT register value) agree.

DISPSTAT [d04] H-Blank Interrupt Request Enable Flag

Allows an interrupt request to be generated during horizontal blanking.

DISPSTAT [d03] V-Blank Interrupt Request Enable Flag

Allows an interrupt request to be generated during vertical blanking.

DISPSTAT [d02] V Counter Evaluation

Flag indicating whether the V count setting and the V count register value match. It is set while they match and automatically reset when they no longer match.

DISPSTAT [d01] H-Blank Status

Can check whether a horizontal blanking interval is currently in effect.

DISPSTAT [d00] V-Blank Status

Can check whether a vertical blanking interval is currently in effect.